<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Intro.aspx.cs" Inherits="DemonstrationWebsite.Intro" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <link rel="stylesheet" href="~/Resources/Styles.css" runat="server" />
    
    <!-- Load "view source" frame for demo -->
    <script>window.parent.frames['viewsource'].window.location.href = 'ViewSourceBlank.html';</script>    
</head>
<body>
    <form id="form1" runat="server">
        <h2>Introduction</h2>
        <p>
            jMVC.NET is an open-source control library for ASP.NET developers. It provides a simple
            but powerful client-side MVC engine which makes it easy to develop dynamically-changing 
            user interfaces.
        </p>
        <p>
            jMVC.NET is most useful when the structure or number of your controls changes
            according to the data entered or selections made, and you don't want to do postbacks 
            or AJAX trickery to make it happen.
        </p>
        <h2>Demos</h2>
        <p>
            To get a feel for how you can drop a jMVC.NET control into your existing ASP.NET application,
            see these examples. They range from super-simple to fairly advanced, but in all cases (except
            for "Hello World") are probably neater and simpler than any server-centric native ASP.NET
            implementation of the same behaviour.
        </p>
        <p>
            You will need to understand some Javascript as the templating language is actually just 
            Javascript in disguise, and the client-side controller code is obviously Javascript too.
            The server-side code is written in C# here, but there's nothing to stop you using jMVC.NET
            with VB.NET just the same.
        </p>
        <ul>
            <li>
                <a href="HelloWorldDemo/HelloWorld.aspx">"Hello world"</a>
            </li>
            <li>
                <a href="SimpleListDemo/SimpleListDemo.aspx">A simple list editor</a>
            </li>        
            <li>
                <a href="ClientSideGridDemo/ClientSideGrid.aspx">Client-side grid</a>
            </li>
            <li>
                <a href="RecursiveFoldersDemo/Folders.aspx">Hierarchical folders control</a>
            </li>        
        </ul>
        <h2>More</h2>
        <p>
            For a tutorial on implementing a dynamic list with jMVC.NET, see <a href="http://blog.codeville.net/2007/10/18/jmvcnet-neat-client-side-mvc-for-aspnet/" target="_top">this blog post</a>.
        </p>
        <p>
            For more about the templating language jMVC, including its syntax, see <a href="http://blog.codeville.net/2007/10/04/rich-javascript-mvc-user-interfaces-with-jmvc/" target="_top">this blog post</a>.
        </p>
    </form>
</body>
</html>
